package karaoke.negocio;

import java.util.List;

import karaoke.dao.ReservaDAO;
import karaoke.excepcion.DAOExcepcion;
import karaoke.modelo.Cliente;
import karaoke.modelo.Reserva;
import karaoke.modelo.Sala;

public class GestionReserva {

	public Reserva insertar(String fecha, String estado, String descripcion, int idCliente,int idSala)
				throws DAOExcepcion {
			ReservaDAO dao = new ReservaDAO();

			Reserva vo = new Reserva();
			vo.setFecha(fecha);
			vo.setEstado(estado);
			vo.setDescripcion(descripcion);
			
			Cliente cliente=new Cliente();
			cliente.setIdCliente(idCliente);
			vo.setCliente(cliente);
			
			Sala sala = new Sala();
			sala.setIdsala(idSala);
			vo.setSala(sala);
			

			return dao.insertar(vo);
		}
	public Reserva actualizar(int idReserva, String fecha, String estado, String descripcion, int idCliente, int idSala) throws DAOExcepcion {
		ReservaDAO dao = new ReservaDAO();

		Reserva vo = new Reserva();
		vo.setIdreserva(idReserva);
		vo.setFecha(fecha);
		vo.setEstado(estado);
		vo.setDescripcion(descripcion);
		
		Cliente cliente=new Cliente();
		cliente.setIdCliente(idCliente);
		vo.setCliente(cliente);
		
		Sala sala = new Sala();
		sala.setIdsala(idSala);
		vo.setSala(sala);

		return dao.actualizar(vo);
	}
	public Reserva obtener(int idReserva) throws DAOExcepcion {
			ReservaDAO dao = new ReservaDAO();
			return dao.obtener(idReserva);
		}
	public void eliminar(int idReserva) throws DAOExcepcion {
			ReservaDAO dao = new ReservaDAO();
			dao.eliminar(idReserva);
		}
    public List<Reserva> listar() throws DAOExcepcion {
			ReservaDAO dao = new ReservaDAO();
			return dao.listar();
		}
    
    public List<Reserva> buscarPorNombre(String nombre) throws DAOExcepcion{
    	ReservaDAO dao= new ReservaDAO();
    	return dao.buscarPorNombre(nombre);
    }
    
}